package core

import (
	"regexp"
	"time"
)

func IsValidSnils(snils string) bool {
    pattern := regexp.MustCompile(`^[0-9]{3}-[0-9]{3}-[0-9]{3} [0-9]{2}$`)
    tt := pattern.MatchString(snils)
    return tt
}

func IsValidBirthDate(birthDate string) bool {
    // Преобразуем дату в объект time.Time
    t, err := time.Parse("2006-01-02", birthDate)
    if err != nil {
        return false
    }

    // Проверяем, является ли год корректным
    if t.Year() < 1 || t.Year() > 3000 {
        return false
    }

    // Проверяем, является ли месяц корректным
    if t.Month() < 1 || t.Month() > 12 {
        return false
    }

    // Проверяем, является ли день корректным
    if t.Day() < 1 || t.Day() > 31 {
        return false
    }

    // Проверяем, является ли день корректным для текущего месяца
    if t.Month() != time.Month(t.Month()) {
        return false
    }

    return true
}